1. Technical Field
Embodiments of the present invention generally relate to data processing systems. More particularly, embodiments of the invention relate to an improved approach to viewing the status of clustered application server processes.
2. Discussion
In data processing systems, SOA (Service Oriented Architecture) business applications and services may be logically organized into clusters. When a particular server process starts, it may attempt to build a view of which members in its cluster are running. The process may do so by iterating through a configured/known list of cluster members and attempting to establish a TCP (Transmission Control Protocol) connection with each of them. If a server member is available, it may be able to respond rather quickly. If it is not available, however, a TCP timeout must occur before the thread that attempted the connection may continue. Because the data processing system may use a limited number of threads to perform the view construction, and a TCP connection timeout could involve a wait that is on the order of minutes, the view construction might take a significant amount of time. Compounding this challenge may be the fact that autonomic controllers running in the process can experience timeouts in attempts to start processes while the view construction is taking place. When these attempts fail, processes can be flagged as being “sick”, and left unused until manually reinstated as being operational.